﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DTO;
using System.Data;
using System.Data.SqlClient;
namespace DAL
{
    public class SachDAO
    {
        dataHelpper da = new dataHelpper();

        #region"Khởi Tạo Kết nối"
        public SqlConnection khoitaoKN()
        {
            SqlConnection conn = new SqlConnection();
            conn = dataHelpper.taoKN();
            return conn;
        }
        #endregion
        #region ""Phat sinh Mã sach"
        public string Phatsinh_masach()
        {
            string masach = "SA_";
            string sql = "select max(id)+1 from sach";
            int temp = (int)da.ExecuteCalar(sql);
            masach += temp.ToString();
            return masach;
        }
        #endregion
        #region " Thêm Nhân Viên"
        public void themsach(SachDTO sach)
        {
            //da.Mo_KN();
            string sql = "insert into sach(masach,tensach,theloai,tacgia,namxuatban,nhaxuatban,tinhtrang,manguoinhap,trigia) values(";
            sql += "'" + sach.Masach + "',";
            sql += "'N" + sach.Tensach + "',";
            sql += "'N" + sach.Theloai + "',";
            sql += "'N" + sach.Tacgia + "',";
            sql += "'" + sach.Namxb + "',";
            sql += "'" + sach.Nhanxb + "',";
            sql += "'N" + sach.Tinhtrang + "',";
            sql += "'" + sach.Manguoinhap + "'," + sach.Trigia + ")";
            da.truyvan(sql);
            // da.Dong_KN();
        }
        #endregion
        #region "Xóa Sach"
        public void xoaSach(SachDTO sach)
        {
            //da.Mo_KN();
            string sql = "delete from sach where masach='" + sach.Masach + "'";
            da.truyvan(sql);
            //da.Dong_KN();
        }
        #endregion
        #region " Sửa thông tin sach"
        public void Sua_Sach(SachDTO sach)
        {
            // da.Mo_KN();
            string sql = "update sach set tensach='N" + sach.Tensach + "',";
            sql += "theloai ='" + sach.Theloai + "', ";
            sql += "tacgia='" + sach.Tacgia + "',";
            sql += "namxuatban='" + sach.Nhanxb + "',";
            sql += "tinhtrang='" + sach.Tinhtrang + "', ";
            sql += "MaNguoiNhap='" + sach.Manguoinhap + "' ";
            sql += "where masach='" + sach.Masach + "' ";
            da.truyvan(sql);
            // da.Dong_KN();
        }
        #endregion
        #region "Tra cứu Thông Tin Sách"
        public DataSet TimKiemTheoMaSach(string masach)
        {
            string sql = "select s.masach as 'Mã Sách', s.tensach as 'Tên Sách', ";
            sql += "s.theloai as 'Thể Loại', s.tacgia as 'Tác Giả', ";
            sql += "s.namxuatban as 'Năm Xuất Bản',s.nhaxuatban as 'Nhà Xuất Bản',s.tinhtrang as 'Tình Trạng', ";
            sql += "s.trigia as 'Giá Tiền',nv.hoten as 'Người Nhập' ";
            sql += "from sach s,nhanvien nv ";
            sql += "where masach like '%" + masach + "%' ";
            sql += "and nv.manv=s.manguoinhap";
            return da.HienThi(sql);
        }

        public DataSet TimKiemTheoTenSach(string tensach)
        {
            string sql = "select s.masach as 'Mã Sách', s.tensach as 'Tên Sách', ";
            sql += "s.theloai as 'Thể Loại', s.tacgia as 'Tác Giả', ";
            sql += "s.namxuatban as 'Năm Xuất Bản',s.nhaxuatban as 'Nhà Xuất Bản',s.tinhtrang as 'Tình Trạng', ";
            sql += "s.trigia as 'Giá Tiền',nv.hoten as 'Người Nhập' ";
            sql += "from sach s,nhanvien nv ";
            sql += "where tensach like '%" + tensach + "%' ";
            sql += "and nv.manv=s.manguoinhap";
            return da.HienThi(sql);

        }
        //public DataTable TimTheoNgaySinh(NhanVienDTO NV)
        //{
        //    string sql = "select * from nhanvien ngaysinh ngaysinh between '#"++"#'";
        //}
        public DataSet TimKiemTheoTacGia(string Tacgia)
        {
            string sql = "select s.masach as 'Mã Sách', s.tensach as 'Tên Sách', ";
            sql += "s.theloai as 'Thể Loại', s.tacgia as 'Tác Giả', ";
            sql += "s.namxuatban as 'Năm Xuất Bản',s.nhaxuatban as 'Nhà Xuất Bản',s.tinhtrang as 'Tình Trạng', ";
            sql += "s.trigia as 'Giá Tiền',nv.hoten as 'Người Nhập' ";
            sql += "from sach s,nhanvien nv ";
            sql += "where tacgia like '%" + Tacgia + "%' ";
            sql += "and nv.manv=s.manguoinhap";
            return da.HienThi(sql);

        }
        public DataSet TimKiemTheoNhaXB(string nhaxb)
        {
            string sql = "select s.masach as 'Mã Sách', s.tensach as 'Tên Sách', ";
            sql += "s.theloai as 'Thể Loại', s.tacgia as 'Tác Giả', ";
            sql += "s.namxuatban as 'Năm Xuất Bản',s.nhaxuatban as 'Nhà Xuất Bản',s.tinhtrang as 'Tình Trạng', ";
            sql += "s.trigia as 'Giá Tiền',nv.hoten as 'Người Nhập' ";
            sql += "from sach s,nhanvien nv ";
            sql += "where nhaxuatban like '%" + nhaxb + "%' ";
            sql += "and nv.manv=s.manguoinhap";
            return da.HienThi(sql);
        }
        public DataSet TimTheoGT(decimal tu, decimal den)
        {
            string sql = "select s.masach as 'Mã Sách', s.tensach as 'Tên Sách', ";
            sql += "s.theloai as 'Thể Loại', s.tacgia as 'Tác Giả', ";
            sql += "s.namxuatban as 'Năm Xuất Bản',s.nhaxuatban as 'Nhà Xuất Bản',s.tinhtrang as 'Tình Trạng', ";
            sql += "s.trigia as 'Giá Tiền',nv.hoten as 'Người Nhập' ";
            sql += "from sach s,nhanvien nv ";
            sql += "where trigia between " + tu + " and " + den + " ";
            sql += "and nv.manv=s.manguoinhap";
            return da.HienThi(sql);
        }
        public DataSet TimTheo_NanXB(int tunam, int dennam)
        {
            string sql = "select s.masach as 'Mã Sách', s.tensach as 'Tên Sách', ";
            sql += "s.theloai as 'Thể Loại', s.tacgia as 'Tác Giả', ";
            sql += "s.namxuatban as 'Năm Xuất Bản',s.nhaxuatban as 'Nhà Xuất Bản',s.tinhtrang as 'Tình Trạng', ";
            sql += "s.trigia as 'Giá Tiền',nv.hoten as 'Người Nhập' ";
            sql += "from sach s,nhanvien nv ";
            sql += "where year(namxuatban) between " + tunam + " and " + dennam + " ";
            sql += "and nv.manv=s.manguoinhap";
            return da.HienThi(sql);

        }
        public DataSet HienThi_Sach()
        {
            string sql = "select s.masach as 'Mã Sách', s.tensach as 'Tên Sách', ";
            sql += "s.theloai as 'Thể Loại', s.tacgia as 'Tác Giả', ";
            sql += "s.namxuatban as 'Năm Xuất Bản',s.nhaxuatban as 'Nhà Xuất Bản',s.tinhtrang as 'Tình Trạng', ";
            sql += "s.trigia as 'Giá Tiền',nv.hoten as 'Người Nhập' ";
            sql += "from sach s,nhanvien nv ";
            sql += "where nv.manv=s.manguoinhap";
            return da.HienThi(sql);
        }
    }
}

        #endregion